﻿
using System;
using good1.Core;
using good1.Core.Enums;

namespace good1.ApplicationServices.Interface
{
    public interface IAuthenticationService
    {
        bool ValidateUser(string userName, string password);
        User Register(User user, bool wantsMonthlyUpdates, string password, string reminderQuestion, string reminderAnswer);
        bool CheckAvailability(string emailAddress);
        User GetByUserName(string userName);
        GoodRoles[] GetRolesByUserName(string userName);
        User ApproveEmailAddress(Guid key);
        string GetRolesByUserNameInPipeFormat(string userName);

        //http://legeronline.blogspot.com/2009/08/sarp-architecture-part-1-implementing.html
        //above will be good for adding user to multiple roles
    }
}
